Cloud computing is rapidly changing the Internet into a collection of clouds, which provide a variety of computing resources, storage resources, and, in the future, a variety of resources that are currently unimagined.
This new level of virtualization should have unbounded the physical and geographical limitations of traditional computing, but this is not yet the case largely in part because of current deficiencies managing and instantiating virtualized resources over a network. That is, enterprises have been reluctant to outsource resources to cloud environments because the level-of-effort required for migration remains fairly expensive.
For example, the difficulty associated with managing resources by creating and deleting a lot of resources at one time adds a problem that has not been addressed in the industry. For example, consider a situation where an administrator knows that a resource running Apache™ Hadoop™ XEN (Virtual Machine (VM) Monitor (VMM)) and other scalable services are not performing as they should be, and the administrator needs to provision another 50 resources to handle the increased capacity. The likely only technique in place for the administrator within the enterprise is one that manually clones each one of the needed resources individually and cannot take advantage of the native hardware features available in the underlying architecture, which may assist in making the work more efficient.
In fact, current cloning techniques cause a bottleneck at an enterprise's resource deployment facility. This same bottleneck problem occurs when an administrator needs to de-provision resources that are running. The issue also arises across many other problems sets associated with distributing and creating processes intelligently across a network.
So, if an enterprise needs to get a large number of resources into an enterprise system as quickly as possible, the traditional cloning technology uses a one-to-one cloning approach, which is very slow, largely manual, and inefficient.
Furthermore as resources are moved to cloud environments, new processes are often and regularly started and stopped as needed. In many situations, the number of processes that are started and stopped can be in the range of 10s, 100s, or even 1000s at a time. Current architecture arrangements and methodologies do not efficiently allow this to happen without also having to incur large overhead expenses during the process.